package com.ruoyi.courseManagement.service;

import com.ruoyi.courseManagement.domain.Category;
import com.ruoyi.courseManagement.domain.vo.CategoryVO;

import java.util.List;

/**
 * 课程分类Service接口
 * 
 * @author ruoyi
 * @date 2025-06-09
 */
public interface CategoryService
{
    /**
     * 查询课程分类
     * 
     * @param categoryId 课程分类主键
     * @return 课程分类
     */
    public Category selectCategoryByCategoryId(Integer categoryId);

    /**
     * 查询课程分类列表
     * 
     * @param categoryVO 课程分类
     * @return 课程分类集合
     */
    public List<CategoryVO> selectCategoryList(CategoryVO categoryVO);

    /**
     * 根据校区查询课程分类列表
     *
     * @param campusId 校区id
     * @return 课程分类集合
     */
    public List<Category> selectCategoryListByCampusId(Integer campusId);

//    /**
//     * 查询校区列表
//     *
//     * @return 校区集合
//     */
//    public List<CampusVO> selectCampusList();

    /**
     * 新增课程分类
     * 
     * @param category 课程分类
     * @return 结果
     */
    public int insertCategory(Category category);

    /**
     * 修改课程分类
     * 
     * @param category 课程分类
     * @return 结果
     */
    public int updateCategory(Category category);

    /**
     * 批量删除课程分类
     * 
     * @param categoryIds 需要删除的课程分类主键集合
     * @return 结果
     */
    public int deleteCategoryByCategoryIds(Integer[] categoryIds);

    /**
     * 删除课程分类信息
     * 
     * @param categoryId 课程分类主键
     * @return 结果
     */
    public int deleteCategoryByCategoryId(Integer categoryId);
}
